﻿using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Activities;
using System.Activities.Expressions;
using System.Activities.Presentation.PropertyEditing;
using System.Activities.Statements;
using System.Collections.Generic;
using System.ComponentModel;
using Core = Vision.Core;

namespace Vision.Core.ActivityComponents.IO.File
{        
    /// <summary>
    /// 
    /// </summary>
    public class FileCopy : NativeActivity
    {
        /// <summary>
        /// 
        /// </summary>
        [Category("Input")]
        public InArgument<string> InputFilePath { get; set; }

        /// <summary>
        /// 
        /// </summary>
        [Category("Input")]
        public InArgument<string> OutputFilePath { get; set; }
        
        /// <summary>
        /// 
        /// </summary>
        /// <param name="context"></param>
        protected override void Execute(NativeActivityContext context)
        {                        
            System.IO.File.Copy(this.InputFilePath.Get(context), this.OutputFilePath.Get(context));
        }
    }
}
